/**
WOP_Int_Entry

進一步定義Entry中的關於int基本attribute

賴念煒 -06/12/11 新增檔案。
**/

#ifndef _WOP_Int_Entry_H_
#define	_WOP_Int_Entry_H_
/*------------------------------------------------------------*/
#include "WOP_Entry.h"
//#include "src/MappingTree.h"

class WOP_Int_Entry:public WOP_Entry{
private:
	int _val ;
	float _valf;
	double _vald;
	WOP_Int_Entry(){}
public:
	WOP_Int_Entry(string s,WOP_Entry* parent);
	WOP_Int_Entry(string s);

	int* getIntValAddr() { return &_val ; }
	float* getFloatValAddr() { return &_valf ; }
	double* getDoubleValAddr() { return &_vald ; }
	string getTypeStr() { return std::string("int"); }
	virtual bool update();
	virtual void updateRealValue(string s) {
		int value ;
		_value = s ;
		if(from_string<int>(value, std::string(_value), std::boolalpha)) {
			_val = value ;
			_valf = (float)value;
			_vald = (double)value;
		} else assert(false);
	}
};
/*------------------------------------------------------------*/
#endif	//#ifndef _WOP_Int_Entry_H_